

package com.jf.cloud.biz.service;

import com.jf.cloud.biz.vo.NotifyParamVO;
import com.jf.cloud.common.order.vo.SendNotifyBO;

import java.util.List;


/**
 * 统一发送通知
 * @author zz
 */
public interface SendMessageService {

    /**
     * 推送通知
     * @param notifyParamVO 统一推送消息所需参数
     */
    void sendMsg(NotifyParamVO notifyParamVO);

    /**
     * 推送消息给用户
     * @param notifyList 推送消息列表
     */
    void sendOrderNotifyMsgToUser(List<SendNotifyBO> notifyList);

    /**
     * 推送消息给用户
     * @param sendNotifyBO 推送消息参数
     */
    void sendOrderNotifyMsgToShop(SendNotifyBO sendNotifyBO);

    /**
     * 推送消息给商家用户
     * @param sendNotifyBO 推送消息参数
     */
    void sendQrCodeNotifyMsgToShop(SendNotifyBO sendNotifyBO);

    /**
     * 推送商品消息给店铺
     * @param notifyList 推送消息列表
     */
    void sendProductNotifyMsgToShop(List<SendNotifyBO> notifyList);

    /**
     * 推送订单待采购提醒给店铺
     * @param sendNotify
     */
    void sendOrderToPurchaseNotifyMsgToShop(List<SendNotifyBO> sendNotify);

    /**
     * 营销活动消息推送给商家
     * @param sendNotifyBO
     */
    void sendActivityNotifyMsgToShop(SendNotifyBO sendNotifyBO);
}
